home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 46 / Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso / -serious- / misc / installer / gui api / include / libraries / installergui.h
Encoding:
C/C++ Source or Header  |  1999-09-06  |  7.2 KB  |  190 lines

  1.  
  2. #ifndef LIBRARIES_INSTALLERGUI_H
  3. #define LIBRARIES_INSTALLERGUI_H
  4.  
  5. /*
  6. **  $VER: installergui.h 37.0 (15.08.99)
  7. **  (C) by Jens Tröger
  8. **
  9. */
  10.  
  11. // this is the local function-environment, which some
  12. // functions (e.g. igui_AskBool as gui implementation
  13. // for ASKBOOL) get as an argument; you may read/write
  14. // from/to this structure whenever needed; the entries
  15. // are named like the related functions (i.e. that
  16. // fe_Prompt holds the related PROMPT value and so on)
  17. struct FunctionEnvironment
  18. {
  19.   APTR        fe_PRIVATE;  // do not touch :)
  20.   long        fe_All;
  21.   long        fe_Append;
  22.   long        fe_Assigns;
  23.   APTR        fe_Back;
  24.   struct List fe_Choices;
  25.   struct List fe_Command;
  26.   long        fe_Confirm;
  27.   long        fe_Default;
  28.   long        fe_Dest;
  29.   long        fe_Disk;
  30.   long        fe_Files;
  31.   long        fe_Fonts;
  32.   long        fe_GetDefaultTool;
  33.   long        fe_GetPosition[2];
  34.   long        fe_GetStack;
  35.   struct List fe_GetTooltype;
  36.   long        fe_Help;
  37.   long        fe_Include;
  38.   long        fe_Infos;
  39.   long        fe_NewName;
  40.   long        fe_NewPath;
  41.   long        fe_NoGauge;
  42.   long        fe_NoPosition;
  43.   long        fe_NoReq;
  44.   long        fe_Pattern;
  45.   long        fe_Prompt;
  46.   long        fe_Quiet;
  47.   long        fe_RangeSet;
  48.   long        fe_Range[2];
  49.   long        fe_Resident;
  50.   long        fe_Safe;
  51.   long        fe_SetDefaultTool;
  52.   long        fe_SetPositionSet;
  53.   long        fe_SetPosition[2];
  54.   long        fe_SetStack;
  55.   struct List fe_SetTooltype;
  56.   long        fe_Source;
  57.   long        fe_Swapcolors;
  58.   long        fe_Optional_AskUser;
  59.   long        fe_Optional_Fail;
  60.   long        fe_Optional_NoFail;
  61.   long        fe_Optional_Force;
  62.   long        fe_Optional_OkNoDelete;
  63. };
  64.  
  65. /******************************************************************************/
  66.  
  67. // these are values used by the gui; some functions may get
  68. // it as arguments and some functions have to return them!
  69. // see the example source for more information
  70.  
  71. #define USER_NOVICE                      0
  72. #define USER_AVERAGE                     1
  73. #define USER_EXPERT                      2
  74.  
  75. #define LOG_NOLOG                        0
  76. #define LOG_FILE                         1
  77. #define LOG_PRINTER                      2
  78.  
  79. #define INSTALL_FOR_REAL                 0
  80. #define INSTALL_PRETEND                  1
  81.  
  82. #define GUIEVENT_NOTHING                 0
  83. #define GUIEVENT_PROCEED                 1
  84. #define GUIEVENT_ABORT                   2
  85. #define GUIEVENT_QUIT                    3
  86. #define GUIEVENT_BACK                    4
  87. #define GUIEVENT_PRIVATE                 5
  88.  
  89. #define GUIERROR_NOERROR                 0
  90. #define GUIERROR_OUT_OF_MEMORY           1
  91. #define GUIERROR_NO_GUI_OBJECT           2
  92.  
  93. #define GUI_QUERYOBJ_SCREEN              0
  94. #define GUI_QUERYOBJ_WINDOW              1
  95.  
  96. #define GUI_QUERYATTR_WIDTH              0
  97. #define GUI_QUERYATTR_HEIGHT             1
  98. #define GUI_QUERYATTR_DEPTH              2
  99. #define GUI_QUERYATTR_COLORS             3
  100. #define GUI_QUERYATTR_UPPER              4
  101. #define GUI_QUERYATTR_LOWER              5
  102. #define GUI_QUERYATTR_LEFT               6
  103. #define GUI_QUERYATTR_RIGHT              7
  104.  
  105. #define GUI_EFFECT_POS_UPPERLEFT         0x00
  106. #define GUI_EFFECT_POS_UPPERCENTER       0x01
  107. #define GUI_EFFECT_POS_UPPERRIGHT        0x02
  108. #define GUI_EFFECT_POS_CENTERLEFT        0x10
  109. #define GUI_EFFECT_POS_CENTERCENTER      0x11
  110. #define GUI_EFFECT_POS_CENTERRIGHT       0x12
  111. #define GUI_EFFECT_POS_LOWERLEFT         0x20
  112. #define GUI_EFFECT_POS_LOWERCENTER       0x21
  113. #define GUI_EFFECT_POS_LOWERRIGHT        0x22
  114.  
  115. #define GUI_EFFECT_EFFECT_NONE           GUI_EFFECT_EFFECT_HORIZONTAL
  116. #define GUI_EFFECT_EFFECT_HORIZONTAL     0
  117. #define GUI_EFFECT_EFFECT_RADIAL         1
  118.  
  119. /******************************************************************************/
  120.  
  121. // since the global environment and the texts simply come as
  122. // an array, you must use these values to access the elements
  123. // of theses arrays.
  124.  
  125. // offsets for the global environment; you may read/write from/to this
  126. // array if needed
  127. enum { GENV_SCRIPT = 0, GENV_APPNAME, GENV_LANGUAGE, GENV_SYSTEM_LANGUAGE, GENV_USER,
  128.        GENV_LOG, GENV_LOGFILENAME, GENV_LOGHANDLE, GENV_DONTDELFROMSYSDIRS, GENV_INSTALL,
  129.        GENV_WELCOME, GENV_INSTALLER_VERSION, GENV_QUIET_EXIT, GENV_STARTUP,
  130.        GENV_LAZYCOMPILE, GENV_DEBUGMODE, GENV_UNINSTALL, GENV_PACKAGE_COMMENT,
  131.        GENV_ALWAYSCONFIRM,
  132.        GENV_GUI_ALLOW_PRINT, GENV_GUI_ALLOW_PRETEND, GENV_GUI_ALLOW_LOG, GENV_GUI_MINUSER, GENV_GUI_DEFUSER };
  133.  
  134. // offsets for the text array; you must not write to this array, just read
  135. // the values; all texts are already localized
  136. enum { START_NOSCRIPT = 0, START_BUTTONS,
  137.  
  138.        WELCOME, OK, ABOUT, INTERESTING, THANX, BYE, COMPLETE, WORKING, BUILTINGUI,
  139.        YES, NO, MKDIR_INFO, MKDIR_ASKNAME, MKDIR_PROMPT,
  140.        ASKNUM_RANGE, REALLY_QUIT, YES_NO, IGNORE_PROTOCOL_QUIT, IGNORE_QUIT, ERROR,
  141.        MUST_INSERT_DISK, FAILED_OPEN_LOG, EMPTY, COPYLIB_PATTERN, COPYLIB_VERSION,
  142.        COPYLIB_NOVERSION, SOURCEFILE, DESTFILE, DESTDIR, UNPROTECT_DEST, BACK,
  143.  
  144.        HELP_INTRO1, HELP_INTRO2, HELP_ASKBOOL, HELP_ASKOPTIONS, HELP_ASKCHOICE, HELP_ASKNUMBER,
  145.        HELP_ASKSTRING, HELP_ASKDISK, HELP_ASKFILE, HELP_ASKDIR, HELP_COPYLIB, HELP_COPYFILES,
  146.        HELP_MAKEDIR, HELP_STARTUP,
  147.  
  148.        GUIERR,
  149.  
  150.        INTRO1_WELCOME, INTRO1_MODE, INTRO1_NOVICE, INTRO1_AVERAGE, INTRO1_EXPERT,
  151.  
  152.        INTRO2_OPTS, INTRO2_REAL, INTRO2_PRETEND, INTRO2_LOG, INTRO2_PRINTER, INTRO2_FILE,
  153.        INTRO2_NONE, INTRO2_ADVANCED, INTRO2_DEBUG, INTRO2_NOSTARTUPSEQUENCE, INTRO2_UNINSTALL,
  154.        INTRO2_DONTDELFROMSYSDIRS, INTRO2_PACKAGE_COMMENT, INTRO2_ALWAYSCONFIRM,
  155.  
  156.        BUTTON_PROCEED_INSTALL, BUTTON_ABORT, BUTTON_ABOUT, BUTTON_HELP, BUTTON_PARENT,
  157.        BUTTON_DRIVES, BUTTON_MKDIR, BUTTON_SKIP, BUTTON_CANCEL, BUTTON_QUIT, BUTTON_NEXTPAGE,
  158.        BUTTON_PREVPAGE, BUTTON_BACK,
  159.  
  160.        SPERR_TEMPLATE, SPERR_SYNTAX_ERROR, SPERR_PARSE_STACK_OVERFLOW, SPERR_PARSE_STACK_UNDERFLOW,
  161.        SPERR_STILL_SOURCE_LEFT, SPERR_UNKNOWN_SYMBOL, SPERR_UNKNOWN_ERROR, SPERR_STACK_CORRUPT,
  162.        SPERR_OUT_OF_MEMORY, SPERR_UNKNOWN_SCANNER_ERR, SPERR_UNTERMINATED_STRING,
  163.        SPERR_NUMBER_TOO_LONG,
  164.  
  165.        SYNERR_LPAREN_EXPECTED, SYNERR_RPAREN_EXPECTED, SYNERR_LPAREN_OR_FUNCTION_EXPECTED,
  166.        SYNERR_FUNCTION_NOT_ALLOWED, SYNERR_UNEXPECTED_END, SYNERR_MISSING_EXPR,
  167.        SYNERR_FUNCTIONAL_EXPR_NEEDED,
  168.  
  169.        IERR_TEMPLATE, IERR_UNKNOWN,
  170.        IERR_DIV_ZERO, IERR_UNIMPLEMENTED, IERR_NOT_INIT, IERR_IDENT_EXPECTED,
  171.        IERR_OUT_OF_RANGE, IERR_TYPE_CONFLICT, IERR_NUMBER_TOO_LONG, IERR_UNKNOWN_USER_FUN,
  172.        IERR_STACK_FULL, IERR_STR_FORMAT_ERR, IERR_MISSING_ARG,
  173.        IERR_TOO_MANY_ARGS, IERR_MISSING_PARAM_FUN, IERR_BAD_SOURCE, IERR_NEED_STRING_TYPE,
  174.        IERR_NEED_NUM_TYPE, IERR_NEED_PARAM_TYPE, IERR_ERROR_IN_SCRIPT, IERR_BAD_PARAMETER_DATA,
  175.        IERR_NO_REXX_SERVER,  IERR_BAD_SYMBOL_PROPERTY,
  176.  
  177.        TERR_TEMPLATE, TERR_ARG_NUM, TERR_PARAM_OUTSIDE, TERR_CANNOT_NEST, TERR_MUST_BE_IDENT,
  178.        TERR_UNINIT_IDENT, TERR_UNKNOWN, TERR_MISSING_PARAM, TERR_WRONG_PARAM, TERR_UNDEF_USERFUN,
  179.  
  180.        MENU_PROJECT, MENU_ABOUT, MENU_ABOUTGUI, MENU_ICONIFY, MENU_QUIT,
  181.  
  182.        CONFIRM_COPYFILES, CONFIRM_COPYLIB, CONFIRM_DELETE, CONFIRM_EXECUTE, CONFIRM_ICONINFO,
  183.        CONFIRM_MAKEDIR, CONFIRM_RENAME, CONFIRM_REXX, CONFIRM_RUN, CONFIRM_STARTUP,
  184.        CONFIRM_TEXTFILE, CONFIRM_TOOLTYPE };
  185.  
  186. #endif
  187.  
  188.  
  189.  
  190.